package bio.chatproject.server;

import bio.chatproject.util.Constants;

import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.HashMap;
import java.util.Map;

/**
 * @author charwayH
 */
public class ServerChat {

    /**
     * 定义一个集合存放所有在线的socket
     * 在线集合只需要一个:存放客户端socket的同时还需要知道Socket客户端的名称
     */
    public static Map<Socket, String> onlineSockets = new HashMap<Socket, String>();
    public static void main(String[] args) {
        try {
            // 注册端口
            ServerSocket serverSocket = new ServerSocket(Constants.PORT);
            System.out.println("====服务端启动====");
            /**
             * 循环一直等待所有可能的客户端连接
             */
            while (true){
                Socket socket = serverSocket.accept();
                // 把客户端的socket管道单独配置一个线程来处理
                new ServerReader(socket).start();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}
